package aes.general;

import java.io.Serializable;
import java.util.ArrayList;


/**
 * The Class Question. Entity Class , represents Question of Exam. Contains various Data fields relevant to Question. 
 */
public class Question implements Serializable{

	
	private static final long serialVersionUID = 1L;
	private String QId;
	private String Question;
	private String Description;
	private String Author;
	private String Subject;
	private ArrayList<String> Answer;
	private Integer correctAns;
	private Integer selectedAnsExAuto;  //ONLY RELEVANT TO AUTOMATIC EXAM EXECUTION//

	
    /**
     * Default Constructor
     */
	public Question() {
		super();
	}

	/**
	 * Gets the Question id.
	 *
	 * @return the Question id
	 */
	public String getQId() {
		return QId;
	}

	/**
	 * Sets the Question id.
	 *
	 * @param qId the new Question id
	 */
	public void setQId(String qId) {
		QId = qId;
	}

	/**
	 * Gets the Text of the Question .
	 *
	 * @return the question
	 */
	public String getQuestion() {
		return Question;
	}

	/**
	 * Sets the Question itself. 
	 *
	 * @param question the new question
	 */
	public void setQuestion(String question) {
		Question = question;
	}

	/**
	 * Gets the Description of Question.
	 *
	 * @return the description
	 */
	public String getDescription() {
		return Description;
	}

	/**
	 * Sets the description of Question.
	 *
	 * @param description the new description
	 */
	public void setDescription(String description) {
		Description = description;
	}

	/**
	 * Gets the author.
	 *
	 * @return the author
	 */
	public String getAuthor() {
		return Author;
	}

	/**
	 * Sets the author.
	 *
	 * @param author the new author
	 */
	public void setAuthor(String author) {
		Author = author;
	}

	/**
	 * Gets the subject.
	 *
	 * @return the subject
	 */
	public String getSubject() {
		return Subject;
	}

	/**
	 * Sets the subject.
	 *
	 * @param subject the new subject
	 */
	public void setSubject(String subject) {
		Subject = subject;
	}

	/**
	 * Gets the answer list of Question.
	 *
	 * @return the answer list
	 */
	public ArrayList<String> getAnswer() {
		return Answer;
	}

	/**
	 * Sets the answer list of Question.
	 *
	 * @param answer the new answer list
	 */
	public void setAnswer(ArrayList<String> answer) {
		Answer = answer;
	} 
	
	/**
	 * Gets the correct answer.
	 *
	 * @return the correct answer
	 */
	public Integer getCorrectAns() {
		return correctAns;
	}

	/**
	 * Sets the correct answer.
	 *
	 * @param correctAns the new correct answer
	 */
	public void setCorrectAns(Integer correctAns) {
		this.correctAns = correctAns;
	}

	/**
	 * Gets the single selected answer in automatic exam .
	 *
	 * @return the selectedAnsExAuto
	 */
	public Integer getSelectedAnsExAuto() {
		return selectedAnsExAuto;
	}

	/**
	 * Sets the single selected answer in automatic exam .
	 *
	 * @param selectedAnsExAuto the answer to set
	 */
	public void setSelectedAnsExAuto(Integer selectedAnsExAuto) {
		this.selectedAnsExAuto = selectedAnsExAuto;
	}


	
}
